package cn.skyclass.utils
{
	import mx.utils.ObjectUtil;
	
	/**
	 * 对 html 文本进行操作的工具类
	 */
	public class HtmlUtil
	{
		/**
		 * 对一个对象进行 html 编码，仅编码字符串属性，其余属性将被忽略
		 */
		public static function htmlEncodeObject(obj:Object):void{
			if(!obj){ return ; }
			
			var claInfo:Object = ObjectUtil.getClassInfo(obj);			
			var props:Array = claInfo["properties"];
			for each(var q:QName in props){
				try{		
					var s:String = obj[q.localName] as String;
					if(s){
						obj[q.localName] = htmlEncode(s);
					}
				}catch(err:Error){
	            	trace(err);
	            }
			}			
		}
		
		/**
		 * 对一个字符串进行 html 编码
		 */
		public static function htmlEncode(str:String):String{
			if(str){
				return str.replace(/</g, "&lt;").replace(/>/g, "&gt;");
			}else{
				return str;
			}
		}		
		
	}
}